package com.eatrip.service.implementation;

import java.util.Date;
import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.eatrip.bean.Attrazione;
import com.eatrip.dao.AttrazioniDAO;
import com.eatrip.service.AttrazioniService;

@Service
public class AttrazioniServiceImple implements AttrazioniService{
	
	@Autowired
	private AttrazioniDAO attrazioniDao;

	@Transactional(readOnly=true)
	public Attrazione getAttrazione(int idAttrazione) {
		return attrazioniDao.getAttrazione(idAttrazione);
	}
	@Transactional(readOnly=true)
	public List<Attrazione> getAttrazioniByComune(int idComune,int start,int numRow) {
		// TODO Auto-generated method stub
		return attrazioniDao.getAttrazioniByComune(idComune);
	}

	@Transactional(readOnly=true)
	public List<Attrazione> getAttrazioniByPeriodo(Date dataInizio, Date dataFine, int start,int numRow) {
		// TODO Auto-generated method stub
		return attrazioniDao.getAttrazioniByPeriodo(dataInizio, dataFine);
	}


	@Transactional(readOnly=true)
	public List<Attrazione> getAllAttrazioni(int start,int numRow) {
		return attrazioniDao.getAllAttrazioni();
	}

	@Transactional(readOnly=false)
	public void insertAttrazioni(Attrazione attrazione) {
		// TODO Auto-generated method stub
		attrazioniDao.insertAttrazioni(attrazione);
	}

	@Transactional(readOnly=false)
	public void deleteUser(Attrazione attrazione) {
		// TODO Auto-generated method stub
		attrazioniDao.deleteAllAttrazioni();
	}

	@Transactional(readOnly=false)
	public void deleteAllAttrazioni() {
		// TODO Auto-generated method stub
		attrazioniDao.deleteAllAttrazioni();
	}

	@Transactional(readOnly=false)
	public void updateAttrazioni(Attrazione attrazione) {
		// TODO Auto-generated method stub
		attrazioniDao.updateAttrazioni(attrazione);
	}
	@Override
	public List<Attrazione> getAttrazioniByNomeComune(String nome, int start,
			int numRow) {
		return attrazioniDao.getAttrazioniByNomeComune(nome, start, numRow);
	}


}
